package com.wang.tool.monitor.translator;

import com.wang.tool.monitor.aop.MonitorAdvice;
import com.wang.tool.common.ErrorInfo;

/**
 * 异常翻译器
 *
 * @Author wangshaopeng
 * @Date 2022/6/20
 * @see MonitorAdvice#monitorAround
 */
@FunctionalInterface
public interface ErrorTranslator {

    /**
     * 翻译,不要抛异常
     * 不要返回null
     *
     * @param error 非空
     * @return 非空
     */
    ErrorInfo translate(Throwable error);

}
